/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package logica;

import fisica.CapaFisica;
import fisica.EcocardiogramaEstudioCardiologiaFisica;
import hibernate.objeto.EcocardiogramaEstudioCardiologia;

/**
 *
 * @author Gonzalo
 */
public class EcocardiogramaEstudioCardiologiaLogica extends CapaLogica {

    /**
     * Crea y persiste el examen Ecocardiograma del estudio de cardiología.
     *
     * @param datosEstudioCardiologia Los datos del estudio Ecocardiograma
     * @param idEcocardiogramaEstudioCardiologia El id del objeto
     * creado para su posterior recuperación
     * @return true si se agregó correctamente, false en caso contrario
     */
    public static boolean agregarEcocardiogramaEstudioCardiologia(
            Object[] datosEstudioCardiologia,
            int[] idEcocardiogramaEstudioCardiologia) {
        //Crea el objeto
        EcocardiogramaEstudioCardiologia ecocardiogramaEstudioCardiologia =
                crearObjetoEcocardiogramaEstudioCardiologia(datosEstudioCardiologia);

        //Persiste el objeto
        if (CapaFisica.guardarOActualizarObjeto(ecocardiogramaEstudioCardiologia)) {
            idEcocardiogramaEstudioCardiologia[0] = ecocardiogramaEstudioCardiologia
                    .getIdEcocardiogramaEstudioCardiologia();
            return true;
        } else {
            return false;
        }
    }

    /**
     * Crea el objeto Ecocardiograma.
     *
     * @param datosEstudioCardiologia Los datos del Ecocardiograma
     * @return El objeto creado
     */
    private static EcocardiogramaEstudioCardiologia
            crearObjetoEcocardiogramaEstudioCardiologia(
            Object[] datosEstudioCardiologia) {

        EcocardiogramaEstudioCardiologia ecocardiogramaEstudioCardiologia =
                new EcocardiogramaEstudioCardiologia();

        ecocardiogramaEstudioCardiologia.setAiEcocardiogramaEstudioCardiologia(
                (Float)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_AI]);

        ecocardiogramaEstudioCardiologia.setConclusionesEcocardiogramaEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_CONCLUSIONES].toString());

        ecocardiogramaEstudioCardiologia.setDdviEcocardiogramaEstudioCardiologia(
                (Float)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_DDVI]);

        ecocardiogramaEstudioCardiologia.setDsviEcocardiogramaEstudioCardiologia(
                (Float)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_DSVI]);

        ecocardiogramaEstudioCardiologia.setEteEcocardiogramaEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_ETE].toString());

        ecocardiogramaEstudioCardiologia.setEttEcocardiogramaEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_ETT].toString());

        ecocardiogramaEstudioCardiologia.setFaEcocardiogramaEstudioCardiologia(
                (Float)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_FA]);

        ecocardiogramaEstudioCardiologia.setFeyEcocardiogramaEstudioCardiologia(
                (Float)datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_FEY]);

        ecocardiogramaEstudioCardiologia.setFuncionGlogalDelViEcocardiogramaEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_FUNCION_GLOGAL_DEL_VI].toString());

        ecocardiogramaEstudioCardiologia.setMotilidadParietalEcocardiogramaEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_MOTILIDAD_PARIETAL].toString());

        ecocardiogramaEstudioCardiologia.setValvulasEcocardiogramaEstudioCardiologia(
                datosEstudioCardiologia[CapaLogica.
                ESTUDIO_CARDIOLOGIA_ECOCARDIOGRAMA_VALVULAS].toString());

        return ecocardiogramaEstudioCardiologia;
    }

    /**
     * Retorna el objeto EcocardiogramaEstudioCardiologia según el id.
     *
     * @param idEcocardiogramaEstudioCardiologia  El id de la
     * Ecocardiograma
     * @return El objeto EcocardiogramaEstudioCardiologia consultado, null si no existe
     */
    static EcocardiogramaEstudioCardiologia getEcocardiogramaEstudioCardiologiaPorId(
            int idEcocardiogramaEstudioCardiologia) {
        return EcocardiogramaEstudioCardiologiaFisica
                .getEcocardiogramaEstudioCardiologiaPorId(
                idEcocardiogramaEstudioCardiologia);
    }

}
